package com.xbongbong.paas.elasticsearch.pojo;

import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.xbongbong.paas.toolbox.util.DateUtil;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import org.springframework.data.elasticsearch.annotations.ScriptedField;

import java.io.Serializable;

/**
 * 与 paas 持久层 entity PaasFormDataEntity 对应的 ES 实体
 *   备注：atformId中的F没有大写，因为at|bt|ct  是要灵活拼装的，避免了字符的转换
 * @see com.xbongbong.paas.domain.entity.PaasFormDataEntity
 * @author kaka
 * @time 2018-9-17 17:02
 */
@Getter
@Setter
@ToString
public class StatisticBiFormDataEntity implements Serializable{

    private static final long serialVersionUID = -7024828724863824665L;
    /**
     *主键id
     */
    private Long id;
    /**
     * esId
     */
    private String esId;
    /**
     * 数据源id
     */
    private Long warehouseId;
    /**
     * 创建时间时间戳
     */
    private Long addTime;
    /**
     * 更新时间时间戳
     */
    private Long updateTime;
    /**
     * 公司id
     */
    private String corpid;
    /**
     * 创建者id
     */
    private String creatorId;
    /**
     * 删除标记
     */
    private Integer del;
    /**
     * 表单id
     */
    private Long formId;
    /**
     * 编号
     */
    private String serialNo;
    /**
     * 拥有者id
     */
    private String ownerId;
    /**
     * 部门id
     */
    private Long departmentId;
    /**
     * 流程状态枚举值
     */
    private Integer flowStatus;
    /**
     * 当前流程节点id
     */
    private Long currentFlowNode;
    /**
     * 当前流程节点负责人
     */
    private String currentFlowNodeOwner;
    /**
     * 产品id
     */
    private Long productId;
    
    /**
     * 计算字段
     **/
    @ScriptedField
    private Object computedField_1;
    @ScriptedField
    private Object computedField_2;
    @ScriptedField
    private Object computedField_3;
    @ScriptedField
    private Object computedField_4;
    @ScriptedField
    private Object computedField_5;
    @ScriptedField
    private Object computedField_6;
    @ScriptedField
    private Object computedField_7;
    @ScriptedField
    private Object computedField_8;
    @ScriptedField
    private Object computedField_9;
    @ScriptedField
    private Object computedField_10;


    //
    private Long long_1;
    private Long long_2;
    private Long long_3;
    private Long long_4;
    private Long long_5;
    private Long long_6;
    private Long long_7;
    private Long long_8;
    private Long long_9;
    private Long long_10;
    
    
    private Integer atalone;
    private Integer btalone;
    private Integer ctalone;

    private Object text_1;
    private Object text_2;
    private Object text_3;
    private Object text_4;
    private Object text_5;
    private Object text_6;
    private Object text_7;
    private Object text_8;
    private Object text_9;
    private Object text_10;
    private Object text_11;
    private Object text_12;
    private Object text_13;
    private Object text_14;
    private Object text_15;
    private Object text_16;
    private Object text_17;
    private Object text_18;
    private Object text_19;
    private Object text_20;
    private Object text_21;
    private Object text_22;
    private Object text_23;
    private Object text_24;
    private Object text_25;
    private Object text_26;
    private Object text_27;
    private Object text_28;
    private Object text_29;
    private Object text_30;
    private Object text_31;
    private Object text_32;
    private Object text_33;
    private Object text_34;
    private Object text_35;
    private Object text_36;
    private Object text_37;
    private Object text_38;
    private Object text_39;
    private Object text_40;
    private Object text_41;
    private Object text_42;
    private Object text_43;
    private Object text_44;
    private Object text_45;
    private Object text_46;
    private Object text_47;
    private Object text_48;
    private Object text_49;
    private Object text_50;
    private Object text_51;
    private Object text_52;
    private Object text_53;
    private Object text_54;
    private Object text_55;
    private Object text_56;
    private Object text_57;
    private Object text_58;
    private Object text_59;
    private Object text_60;
    private Object text_61;
    private Object text_62;
    private Object text_63;
    private Object text_64;
    private Object text_65;
    private Object text_66;
    private Object text_67;
    private Object text_68;
    private Object text_69;
    private Object text_70;
    private Object text_71;
    private Object text_72;
    private Object text_73;
    private Object text_74;
    private Object text_75;
    private Object text_76;
    private Object text_77;
    private Object text_78;
    private Object text_79;
    private Object text_80;
    private Object text_81;
    private Object text_82;
    private Object text_83;
    private Object text_84;
    private Object text_85;
    private Object text_86;
    private Object text_87;
    private Object text_88;
    private Object text_89;
    private Object text_90;
    private Object text_91;
    private Object text_92;
    private Object text_93;
    private Object text_94;
    private Object text_95;
    private Object text_96;
    private Object text_97;
    private Object text_98;
    private Object text_99;
    private Object text_100;
    private Double num_1;
    private Double num_2;
    private Double num_3;
    private Double num_4;
    private Double num_5;
    private Double num_6;
    private Double num_7;
    private Double num_8;
    private Double num_9;
    private Double num_10;
    private Double num_11;
    private Double num_12;
    private Double num_13;
    private Double num_14;
    private Double num_15;
    private Double num_16;
    private Double num_17;
    private Double num_18;
    private Double num_19;
    private Double num_20;
    private Double num_21;
    private Double num_22;
    private Double num_23;
    private Double num_24;
    private Double num_25;
    private Double num_26;
    private Double num_27;
    private Double num_28;
    private Double num_29;
    private Double num_30;
    private Double num_31;
    private Double num_32;
    private Double num_33;
    private Double num_34;
    private Double num_35;
    private Double num_36;
    private Double num_37;
    private Double num_38;
    private Double num_39;
    private Double num_40;
    private Double num_41;
    private Double num_42;
    private Double num_43;
    private Double num_44;
    private Double num_45;
    private Double num_46;
    private Double num_47;
    private Double num_48;
    private Double num_49;
    private Double num_50;
    private JSONObject location_1;
    private JSONObject location_2;
    private JSONObject location_3;
    private JSONObject location_4;
    private String location_1_province;
    private String location_1_city;
    private String location_1_district;
    private String location_2_province;
    private String location_2_city;
    private String location_2_district;
    private String location_3_province;
    private String location_3_city;
    private String location_3_district;
    private String location_4_province;
    private String location_4_city;
    private String location_4_district;
    private Long date_1;
    private Long date_2;
    private Long date_3;
    private Long date_4;
    private Long date_5;
    private Long date_6;
    private Long date_7;
    private Long date_8;
    private Long date_9;
    private Long date_10;
    private Long date_11;
    private Long date_12;
    private Long date_13;
    private Long date_14;
    private Long date_15;
    private Long date_16;
    private Long date_17;
    private Long date_18;
    private Long date_19;
    private Long date_20;
    private JSONArray subForm_1;
    private JSONArray subForm_2;
    private JSONArray subForm_3;
    private JSONArray subForm_4;
    private JSONArray subForm_5;
    private JSONArray subForm_6;
    private JSONArray subForm_7;
    private JSONArray subForm_8;
    private JSONArray subForm_9;
    private JSONArray subForm_10;
    private JSONArray myTeam_1;
    private JSONArray myTeam_2;
    private JSONArray myTeam_3;
    private JSONArray myTeam_4;
    private JSONArray myTeam_5;
    private JSONArray myTeam_6;
    private JSONArray myTeamMain_1;
    private JSONArray myTeamMain_2;
    private JSONArray myTeamMain_3;
    private JSONArray myTeamMain_4;
    private JSONArray myTeamMain_5;
    private JSONArray myTeamMain_6;
    private String file_1;
    private String file_2;
    private String file_3;
    private String file_4;
    private String file_5;
    private String file_6;
    private String file_7;
    private String file_8;
    private String file_9;
    private String file_10;
    private JSONArray array_1;
    private JSONArray array_2;
    private JSONArray array_3;
    private JSONArray array_4;
    private JSONArray array_5;
    private JSONArray array_6;
    private JSONArray array_7;
    private JSONArray array_8;
    private JSONArray array_9;
    private JSONArray array_10;
    private JSONArray array_11;
    private JSONArray array_12;
    private JSONArray array_13;
    private JSONArray array_14;
    private JSONArray array_15;
    private JSONArray array_16;
    private JSONArray array_17;
    private JSONArray array_18;
    private JSONArray array_19;
    private JSONArray array_20;
    private JSONArray array_21;
    private JSONArray array_22;
    private JSONArray array_23;
    private JSONArray array_24;
    private JSONArray array_25;
    private JSONArray array_26;
    private JSONArray array_27;
    private JSONArray array_28;
    private JSONArray array_29;
    private JSONArray array_30;
    private JSONArray array_31;
    private JSONArray array_32;
    private JSONArray array_33;
    private JSONArray array_34;
    private JSONArray array_35;
    private JSONArray array_36;
    private JSONArray array_37;
    private JSONArray array_38;
    private JSONArray array_39;
    private JSONArray array_40;
    private JSONArray array_41;
    private JSONArray array_42;
    private JSONArray array_43;
    private JSONArray array_44;
    private JSONArray array_45;
    private JSONArray array_46;
    private JSONArray array_47;
    private JSONArray array_48;
    private JSONArray array_49;
    private JSONArray array_50;
    private Long id_1;
    private Long id_2;
    private Long id_3;
    private Long id_4;
    private Long id_5;
    private Long id_6;
    private Long id_7;
    private Long id_8;
    private Long id_9;
    private Long id_10;
    private Long id_11;
    private Long id_12;
    private Long id_13;
    private Long id_14;
    private Long id_15;
    private Long id_16;
    private Long id_17;
    private Long id_18;
    private Long id_19;
    private Long id_20;
    private Long formId_1;
    private Long formId_2;
    private Long formId_3;
    private Long formId_4;
    private Long formId_5;
    private Long formId_6;
    private Long serialNo_1;
    private Long serialNo_2;
    private Long serialNo_3;
    private Long serialNo_4;
    private Long serialNo_5;
    private Long serialNo_6;
    private String ownerId_1;
    private String ownerId_2;
    private String ownerId_3;
    private String ownerId_4;
    private String ownerId_5;
    private String ownerId_6;
    private Long departmentId_1;
    private Long departmentId_2;
    private Long departmentId_3;
    private Long departmentId_4;
    private Long departmentId_5;
    private Long departmentId_6;
    private Integer flowStatus_1;
    private Integer flowStatus_2;
    private Integer flowStatus_3;
    private Integer flowStatus_4;
    private Integer flowStatus_5;
    private Integer flowStatus_6;
    private String creatorId_1;
    private String creatorId_2;
    private String creatorId_3;
    private String creatorId_4;
    private String creatorId_5;
    private String creatorId_6;
    private Long dataId_1;
    private Long dataId_2;
    private Long dataId_3;
    private Long dataId_4;
    private Long dataId_5;
    private Long dataId_6;
    /**
     * 给字表单使用记录
     */
    private Long dataId;
    /**
     * 父id，可为空
     */
    private String parent;
    /**
     * 连接字段
     */
    private Object my_join_field;
    private String attr;

    private Double sum_1;
    private Double sum_2;
    private Double sum_3;
    private Double sum_4;
    private Double sum_5;
    private Double sum_6;
    private Double avg_1;
    private Double avg_2;
    private Double avg_3;
    private Double avg_4;
    private Double avg_5;
    private Double avg_6;
    private Double min_1;
    private Double min_2;
    private Double min_3;
    private Double min_4;
    private Double min_5;
    private Double min_6;
    private Double max_1;
    private Double max_2;
    private Double max_3;
    private Double max_4;
    private Double max_5;
    private Double max_6;
    private Double count_1;
    private Double count_2;
    private Double count_3;
    private Double count_4;
    private Double count_5;
    private Double count_6;

    public StatisticBiFormDataEntity(){
        del = 0;
        updateTime = DateUtil.getNow();
    }


}
